%% -*- mode: erlang; -*-
{erl_opts, [debug_info]}.
{deps, [
        %% The following two are dependencies of rabbit_common
         {thoas, {git, "https://github.com/emqx/thoas.git", {tag, "v1.0.0"}}}
       , {credentials_obfuscation, {git, "https://github.com/emqx/credentials-obfuscation.git", {tag, "v3.2.0"}}}
       %% The v3.11.13_with_app_src tag, employed in the next two dependencies,
       %% represents a fork of the official RabbitMQ v3.11.13 tag. This fork diverges
       %% from the official version as it includes app and hrl files
       %% generated by make files in subdirectories deps/rabbit_common and
       %% deps/amqp_client (app files are also relocated from the ebin to the src
       %% directory). This modification ensures compatibility with rebar3, as
       %% rabbit_common and amqp_client utilize the erlang.mk build tool.
       %% Similar changes are probably needed when upgrading to newer versions
       %% of rabbit_common and amqp_client. There are hex packages for rabbit_common and
       %% amqp_client, but they are not used here as we don't want to depend on
       %% packages that we don't have control over.
       , {rabbit_common, {git_subdir,
                          "https://github.com/emqx/rabbitmq-server.git",
                          {tag, "v3.11.13-emqx"},
                          "deps/rabbit_common"}}
       , {amqp_client, {git_subdir,
                        "https://github.com/emqx/rabbitmq-server.git",
                        {tag, "v3.11.13-emqx"},
                        "deps/amqp_client"}}
       , {emqx_connector, {path, "../../apps/emqx_connector"}}
       , {emqx_resource, {path, "../../apps/emqx_resource"}}
       , {emqx_bridge, {path, "../../apps/emqx_bridge"}}
       ]}.

{shell, [
    {apps, [emqx_bridge_rabbitmq]}
]}.
